<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">

<ui:composition template="/WEB-INF/templates/interna.xhtml">
	<ui:define name="nav">
		<h:form id="menu">
			<p:menu id="menuItens" styleClass="menu">
				<p:menuitem value="Cadastro" url="/admin/modelo/cadastro" />
				<p:menuitem value="Especifica&ccedil;&atilde;o do modelo"	url="/admin/modelo/especificacao-modelo" />
				<p:menuitem value="Pesquisa"	url="/admin/modelo/pesquisa" />
			</p:menu>
		</h:form>
	</ui:define>

	<ui:define name="centro">

		<h2 class="titulo-admin">Cadastro de modelos</h2>

		<p:separator id="separator" styleClass="separador" />

		<h:form id="formModelo">

			<p:messages id="messages" 
			    showDetail="true" 
			    autoUpdate="true"
				showSummary="false" />

			<h:panelGrid columns="2" cellpadding="8">
			
						<h:outputLabel value="Nome" />
						<p:inputText value="#{modeloManagedBean.modelo.nome}"
						id="nome" 
						required="true"
						requiredMessage="Nome deve ser informado"
						size="32">
							<f:validateLength for="nome" minimum="5" />
						</p:inputText>
					
						<h:outputLabel value="Link fabricante" />
						<p:inputText value="#{modeloManagedBean.modelo.linkFabricante}"
						id="linkFab"
						required="true"
						requiredMessage="Link do fabricante deve ser informado"
						size="32">
							<f:validateLength for="linkFab" minimum="5"/>
						</p:inputText>		
						
						
						<h:outputLabel value="Descri&ccedil;&atilde;o" />						
						<p:inputTextarea value="#{modeloManagedBean.modelo.descricao}"
						id="descricao" 
						required="true"
						requiredMessage="Descri&ccedil;&atilde;o deve ser informado"
						rows="5" cols="30"
						autoResize="false">						
							<f:validateLength for="descricao" minimum="1" maximum="500"/>
						</p:inputTextarea>
						
						<h:outputLabel value="Marca"/>  
            			<p:autoComplete id="marca" 
            			minQueryLength="2"   
                    	value="#{modeloManagedBean.modelo.marca}"                     	
                    	size="32"
                    	required="true"
                    	requiredMessage="Marca deve ser informado"
                    	var="marca"
					    itemLabel="#{marca.nome}" 
					    itemValue="#{marca}"
						converter="marcaConverter" 
						forceSelection="true"
						completeMethod="#{marcaManagedBean.complete}" 
                    	/>
                    	
                    	<h:outputLabel value="Categoria"/>  
            			<p:autoComplete id="categoria" 
            			minQueryLength="3"   
                    	value="#{modeloManagedBean.modelo.categoria}"                     
                    	size="32"
                    	required="true"
                    	requiredMessage="Categoria deve ser informado"
                    	var="categoria"
					    itemLabel="#{categoria.nome}" 
					    itemValue="#{categoria}"
						converter="categoriaConverter" 
						forceSelection="true"
						completeMethod="#{categoriaManagedBean.complete}"                     	
                    	/> 
					
						<p:commandButton value="Incluir"
						process="formModelo"
						update="formModelo :formModelos:modelos"
						actionListener="#{modeloManagedBean.salvar()}"/>
						
			</h:panelGrid>

		</h:form>
		
		<h2 class="titulo-admin">Lista de modelos</h2>

		<p:separator id="separator2" styleClass="separador" />	
		
		<h:form id="formModelos">			
			
			<p:contextMenu for="modelos">  
        		<p:menuitem value="Editar modelo" update=":formAtualiza:display" icon="ui-icon-pencil" oncomplete="dlg.show()" process="@this,modelos"/>  
        		<p:menuitem value="Excluir modelo" update="modelos" icon="ui-icon-close"/>  
    		</p:contextMenu>			
			
			<p:dataTable id="modelos" 
				var="modelo" 
			    value="#{modeloManagedBean.modelos}"
			    rowKey="#{modelo.id}"
				paginator="true" rows="30"	
				selection="#{modeloManagedBean.modeloSelecionado}"	
				selectionMode="single"	
				style="width:95%"													
				paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">
				
				<p:column headerText="Nome">					
					<h:outputText value="#{modelo.nome}" id="nome"/>					
				</p:column>
				
				<p:column headerText="Link fabricante">					
					<h:outputText value="#{modelo.linkFabricante}"/>  			
				</p:column>
				
				<p:column headerText="Categoria">					
					<h:outputText value="#{modelo.categoria.nome}"/>  				
				</p:column>
				
				<p:column headerText="Marca">					
					<h:outputText value="#{modelo.marca.nome}"/>  				
				</p:column>
				
				<p:column headerText="Ativo" style="width:50px">					
					<h:outputText value="Sim" rendered="#{modelo.ativo}"/>
					<h:outputText value="N&atilde;o" rendered="#{!modelo.ativo}" style="color:red"/>			
				</p:column>			
			</p:dataTable>	
			
		</h:form>	
		
		<h:form id="formAtualiza">
			<p:dialog header="Atualiza&ccedil;&atilde;o" 
			widgetVar="dlg" 
			resizable="false" 
			showEffect="clip" 
			hideEffect="explode"			
			id="dialogo">   			  
  
        		<h:panelGrid columns="2" cellpadding="8" id="display">
					
						<h:outputLabel value="Nome" />
						<p:inputText value="#{modeloManagedBean.modeloSelecionado.nome}"
						id="unome" 
						required="true"
						requiredMessage="Link do fabricante deve ser informado"
						size="32">
							<f:validateLength for="unome" minimum="3" />
						</p:inputText>
						
						<h:outputLabel value="Link fabricante" />
						<p:inputText value="#{modeloManagedBean.modeloSelecionado.linkFabricante}"
						id="ulinkFab" 
						required="true"
						requiredMessage="Link do fabricante deve ser informado"
						size="32">
							<f:validateLength for="ulinkFab" minimum="5" />
						</p:inputText>
						
						<h:outputLabel value="Descri&ccedil;&atilde;o" />						
						<p:inputTextarea value="#{modeloManagedBean.modeloSelecionado.descricao}"
						id="udescricao" 
						required="true"
						requiredMessage="Descri&ccedil;&atilde;o deve ser informado"
						rows="5" cols="30"
						autoResize="false">						
							<f:validateLength for="udescricao" minimum="1" maximum="500"/>
						</p:inputTextarea>
						
						<h:outputLabel value="Marca"/>  
            			<p:autoComplete id="umarca" 
            			minQueryLength="3"   
                    	value="#{modeloManagedBean.modeloSelecionado.marca}"                     	
                    	size="32"
                    	required="true"
                    	requiredMessage="Marca deve ser informado"
                    	var="marca"
					    itemLabel="#{marca.nome}" 
					    itemValue="#{marca}"
						converter="marcaConverter" 
						forceSelection="true"
						completeMethod="#{marcaManagedBean.complete}" 
                    	/>
                    	
                    	<h:outputLabel value="Categoria"/>  
            			<p:autoComplete id="ucategoria" 
            			minQueryLength="3"   
                    	value="#{modeloManagedBean.modeloSelecionado.categoria}"                     
                    	size="32"
                    	required="true"
                    	requiredMessage="Categoria deve ser informado"
                    	var="categoria"
					    itemLabel="#{categoria.nome}" 
					    itemValue="#{categoria}"
						converter="categoriaConverter" 
						forceSelection="true"
						completeMethod="#{categoriaManagedBean.complete}"                     	
                    	/> 
					
						<p:commandButton value="Atualizar"										
						actionListener="#{modeloManagedBean.atualizar()}"						
						oncomplete="dlg.hide();"
						update=":formModelos:modelos"/>
						
			</h:panelGrid>       		
     
			</p:dialog>			
		
		</h:form>

	</ui:define>
</ui:composition>
</html>